--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lang/README.de.md 290f7e09d437502dfd03f66e3e656ebd94d3cec9 (290f7e09) Text, 11.80 KB
Reticulum MeshChatX
Ein umfassend modifizierter und funktionsreicher Fork von Reticulum MeshChat von Liam Cottle.
Dieses Projekt ist unabhaengig vom originalen Reticulum MeshChat und steht in keiner Verbindung dazu.
• Website: meshchatx.com
• Quellcode: git.quad4.io/RNS-Things/MeshChatX
• Offizieller Spiegel: github.com/Sudo-Ivan/MeshChatX – derzeit auch fuer Windows- und macOS-Builds genutzt.
• Releases: git.quad4.io/RNS-Things/MeshChatX/releases
• Aenderungsprotokoll: CHANGELOG.md
• TODO: Boards
Wichtige Aenderungen gegenueber Reticulum MeshChat
• Verwendet LXST
• Peewee-ORM durch direktes SQL ersetzt
• Axios durch natives T383838fetch ersetzt
• Aktuelles Electron
• T383838.whl-Pakete mit Webserver und eingebauten Frontend-Assets fuer mehr Deploy-Optionen
• i18n
• PNPM und Poetry fuer Abhaengigkeiten
│ [!WARNING] MeshChatX garantiert keine Datenkompatibilitaet mit aelteren
│ Reticulum-MeshChat-Versionen. Erstellen Sie vor Migration oder Tests eine Datensicherung.
│ [!WARNING] Aeltere Systeme werden noch nicht vollstaendig unterstuetzt. Aktuelle
│ Mindestanforderungen: Python T383838>=3.11 und Node T383838>=24.
Voraussetzungen
• Python T383838>=3.11 (aus T383838pyproject.toml)
• Node.js T383838>=24 (aus T383838package.json)
• pnpm T38383810.32.1 (aus T383838package.json)
• Poetry (verwendet in T383838Taskfile.yml und CI-Workflows)
T282828
task install
task lint:all
task test:all
task build:all
Installationsmethoden
Waehlen Sie die Methode passend zu Umgebung und Paketierung.
┌─────────────────────┬────────────────────┬─────────────────┬─────────────────────────────────────┐
│ Methode │ Frontend enthalten │ Architekturen │ Geeignet fuer │
├─────────────────────┼────────────────────┼─────────────────┼─────────────────────────────────────┤
│ Docker-Image │ Ja │ T383838linux/amd64, T383838l… │ Schnellster Start auf Linux-Servern │
│ Python Wheel (T383838.whl) │ Ja │ Jede Python-un… │ Headless/Webserver ohne Node-Build │
│ Linux AppImage │ Ja │ T383838x64, T383838arm64 │ Portabler Desktop-Einsatz │
│ Debian-Paket (T383838.deb) │ Ja │ T383838x64, T383838arm64 │ Debian/Ubuntu-Installation │
│ RPM-Paket (T383838.rpm) │ Ja │ CI-abhaengig │ Fedora/RHEL/openSUSE │
│ Aus Quellcode │ Lokal gebaut │ Host-Architekt… │ Entwicklung und individuelle Builds │
└─────────────────────┴────────────────────┴─────────────────┴─────────────────────────────────────┘
Hinweise:
• Der Release-Workflow baut explizit Linux T383838x64 und T383838arm64 AppImage + DEB.
• RPM wird ebenfalls versucht und bei Erfolg hochgeladen.
Schnellstart: Docker
T282828
docker compose up -d
Standard-Compose-Datei:
• T383838127.0.0.1:8000 auf dem Host -> Container-Port T3838388000
• T383838./meshchat-config -> T383838/config fuer Persistenz
Bei Berechtigungsproblemen:
T282828
sudo chown -R T79c0ff1000:1000 ./meshchat-config
Installation aus Release-Artefakten
1) Linux AppImage (x64/arm64)
1. T383838ReticulumMeshChatX-v<version>-linux-<arch>.AppImage von den Releases herunterladen.
2. Ausfuehrbar machen und starten:
T282828
chmod +x ./ReticulumMeshChatX-v*-linux-*.AppImage
./ReticulumMeshChatX-v*-linux-*.AppImage
2) Debian/Ubuntu T383838.deb (x64/arm64)
1. T383838ReticulumMeshChatX-v<version>-linux-<arch>.deb herunterladen.
2. Installieren:
T282828
sudo apt install ./ReticulumMeshChatX-v*-linux-*.deb
3) RPM-basierte Systeme
1. T383838ReticulumMeshChatX-v<version>-linux-<arch>.rpm herunterladen, falls im Release vorhanden.
2. Installieren:
T282828
sudo rpm -Uvh ./ReticulumMeshChatX-v*-linux-*.rpm
4) Python Wheel (T383838.whl)
Release-Wheels enthalten die gebauten Web-Assets.
T282828
pip install ./reticulum_meshchatx-*-py3-none-any.whl
meshchatx --headless
T383838pipx wird ebenfalls unterstuetzt:
T282828
pipx install ./reticulum_meshchatx-*-py3-none-any.whl
Aus Quellcode ausfuehren (Webserver-Modus)
Fuer Entwicklung oder lokale Custom-Builds.
T282828
git clone https://git.quad4.io/RNS-Things/MeshChatX.git
Tffa657cd MeshChatX
corepack Tffa657enable
pnpm install
pip install poetry
poetry install
pnpm run build-frontend
poetry run python -m meshchatx.meshchat --headless --host T79c0ff127.0.0.1
Sandboxing (Linux)
Um das native T383838meshchatx-Programm (Alias: T383838meshchat) mit zusaetzlicher Dateisystem-Isolation auszufuehren, koennen Sie Firejail oder Bubblewrap (T383838bwrap) nutzen, bei weiterhin normalem Netzwerkzugriff fuer Reticulum und die Web-Oberflaeche. Vollstaendige Beispiele (pip/pipx, Poetry, Hinweise zu USB-Seriell) finden Sie in:
Dieselbe Seite erscheint in der in-app-Dokumentation (MeshChatX-Docs), wenn sie aus den gebuendelten oder synchronisierten T383838meshchatx-docs-Dateien ausgeliefert wird.
Desktop-Pakete aus Quellcode bauen
Diese Skripte sind in T383838package.json und T383838Taskfile.yml definiert.
Linux x64 AppImage + DEB
T282828
pnpm run dist:linux-x64
Linux arm64 AppImage + DEB
T282828
pnpm run dist:linux-arm64
RPM
T282828
pnpm run dist:rpm
Oder ueber Task:
T282828
task dist:fe:rpm
Architekturunterstuetzung
• Docker: T383838amd64, T383838arm64
• Linux AppImage: T383838x64, T383838arm64
• Linux DEB: T383838x64, T383838arm64
• Windows: T383838x64, T383838arm64 (Build-Skripte vorhanden)
• macOS: Build-Skripte vorhanden (T383838arm64, T383838universal) fuer lokale Build-Umgebungen
• Android: Projekt und CI-Workflow im Repository enthalten
Android
Konfiguration
┌────────────────────────┬──────────────────────────────────────┬──────────────┬───────────────────┐
│ Argument │ Umgebungsvariable │ Standard │ Beschreibung │
├────────────────────────┼──────────────────────────────────────┼──────────────┼───────────────────┤
│ T383838--host │ T383838MESHCHAT_HOST │ T383838127.0.0.1 │ Webserver-Bind-A… │
│ T383838--port │ T383838MESHCHAT_PORT │ T3838388000 │ Webserver-Port │
│ T383838--no-https │ T383838MESHCHAT_NO_HTTPS │ T383838false │ HTTPS deaktivier… │
│ T383838--ssl-cert / T383838--ssl-key │ T383838MESHCHAT_SSL_CERT / T383838MESHCHAT_SSL_KEY │ (keine) │ PEM-Zertifikat u… │
│ T383838--rns-log-level │ T383838MESHCHAT_RNS_LOG_LEVEL │ (keine) │ Reticulum (RNS) … │
│ T383838--headless │ T383838MESHCHAT_HEADLESS │ T383838false │ Browser nicht au… │
│ T383838--auth │ T383838MESHCHAT_AUTH │ T383838false │ Basis-Authentifi… │
│ T383838--storage-dir │ T383838MESHCHAT_STORAGE_DIR │ T383838./storage │ Datenverzeichnis │
│ T383838--public-dir │ T383838MESHCHAT_PUBLIC_DIR │ auto/bundled │ Frontend-Verzeic… │
└────────────────────────┴──────────────────────────────────────┴──────────────┴───────────────────┘
Branches
┌────────┬────────────────────────────────────────────────────────────────────────────────┐
│ Branch │ Zweck │
├────────┼────────────────────────────────────────────────────────────────────────────────┤
│ T383838master │ Stabile Releases. Nur produktionsreifer Code. │
│ T383838dev │ Aktive Entwicklung. Kann instabile oder unvollstaendige Aenderungen enthalten. │
└────────┴────────────────────────────────────────────────────────────────────────────────┘
Entwicklung
Gaengige Aufgaben aus T383838Taskfile.yml:
T282828
task install
task lint:all
task test:all
task build:all
T383838Makefile-Kurzformen:
┌──────────────┬───────────────────────────────────────────────┐
│ Befehl │ Beschreibung │
├──────────────┼───────────────────────────────────────────────┤
│ T383838make install │ pnpm- und Poetry-Abhaengigkeiten installieren │
│ T383838make run │ MeshChatX ueber Poetry starten │
│ T383838make build │ Frontend bauen │
│ T383838make lint │ eslint und ruff ausfuehren │
│ T383838make test │ Frontend- und Backend-Tests │
│ T383838make clean │ Build-Artefakte und node_modules entfernen │
└──────────────┴───────────────────────────────────────────────┘
Versionierung
Aktuelle Version in diesem Repository: T3838384.4.0.
• T383838package.json ist die Quelle fuer die JavaScript/Electron-Version.
• T383838meshchatx/src/version.py wird aus T383838package.json synchronisiert mit:
T282828
pnpm run version:sync
Fuer konsistente Releases die Versionsfelder dort abgleichen, wo noetig (T383838package.json, T383838pyproject.toml, T383838meshchatx/__init__.py).
Sicherheit
• Integrierte Integritaetspruefungen und HTTPS/WSS-Standardeinstellungen in der App
• CI-Scanning-Workflows in T383838.gitea/workflows/
Sprache hinzufuegen
Die Spracherkennung erfolgt automatisch. Um eine neue Sprache hinzuzufuegen, genuegt eine einzige JSON-Datei:
1. Leere Vorlage aus T383838en.json erzeugen:
T282828
python scripts/generate_locale_template.py
Damit wird T383838locales.json mit leeren Strings fuer alle Schluessel geschrieben.
2. Umbenennen und in das Locale-Verzeichnis verschieben:
T282828
mv locales.json meshchatx/src/frontend/locales/xx.json
3. T383838_languageName am Anfang der Datei auf den nativen Sprachnamen setzen (z.B. T383838"Espanol", T383838"Francais"). Wird im Sprachwahlmenue angezeigt.
4. Alle uebrigen Werte uebersetzen.
5. Schluesselparitaet pruefen: T383838pnpm test -- tests/frontend/i18n.test.js --run
Keine weiteren Code-Aenderungen noetig. App, Sprachwahl und Tests lesen Locales zur Build-Zeit aus T383838meshchatx/src/frontend/locales/.
Mitwirkende
• Liam Cottle - Originales Reticulum MeshChat
• RFnexus - Micron-Parser (JavaScript)
• markqvist - Reticulum, LXMF, LXST
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────